The Omega Test : a fast and practical integerprogramming algorithm for dependence
نویسنده
چکیده
The Omega test is an integer programming algorithm that can determine whether a dependence exists between two array references, and if so, under what conditions. Conventional wisdom holds that integer programming techniques are far too expensive to be used for dependence analysis, except as a method of last resort for situations that cannot be decided by simpler methods. We present evidence that suggests this wisdom is wrong, and that the Omega test is competitive with approximate algorithms used in practice and suitable for use in production compilers. Experiments suggest that, for almost all programs, the average time required by the Omega test to determine the direction vectors for an array pair is less than 500 secs on a 12 MIPS workstation. The Omega test is based on an extension of Fourier-Motzkin variable elimination (a linear programming method) to integer programming, and has worst-case exponential time complexity. However, we show that for many situations in which other (polynomial) methods are accurate, the Omega test has low order polynomial time complexity. The Omega test can be used to project integer programming problems onto a subset of the variables, rather than just deciding them. This has many applications, including accurately and eeciently computing dependence direction and distance vectors.
منابع مشابه
Supporting Array Dependence Testing for an Optimizing/Parallelizing C Compiler
A practical context-sensitive inter-procedural analysis framework for c compilers. [Mas92] Vadim Maslov. Delinearization : An ecient way to break multiloop dependence equations. The omega test : A fast and practical integer programming algorithm for dependence analysis.
متن کاملOn Fast Array Data Dependence Tests
Array data-dependence analysis is an important part of any optimizing compiler for scientiic programs. The Omega test is an exact test for integer solutions to aane constraints and can be used for array data dependence. There are other tests that are less exact but are intended to be faster. Many of these less exact tests are rather complicated and designed to be as accurate as possible while s...
متن کاملDesign, Development and Test of a Practical Train Energy Optimization using GA-PSO Algorithm
One of the strategies for reduction of energy consumption in railway systems is to execute efficient driving by presenting optimized speed profile considering running time, energy consumption and practical constraints. In this paper, by using real route data, an approach based on combination of Genetic and Particle swarm (GA-PSO) algorithms in order to optimize the fuel consumption is provided....
متن کاملOptimal DC Fast Charging Placing And Sizing In Iran Capital (Tehran)
DC fast charging (DCFC) and optimal placing of them is a fundamental factor for the popularization of electric vehicles (EVs). This paper proposes an approach to optimize place and size of charging stations based on genetic algorithm (GA). Target of this method is minimizing cost of conversion of gas stations to charging stations. Another considered issue is minimizing EVs losses to find neares...
متن کاملWeapon scheduling in naval combat systems for maximization of defense capabilities
Air defense is a crucial area for all naval combat systems. In this study, we consider a warship equipped with an air-defense weapon that targets incoming threats using surface-to-air missiles. We define the weapon scheduling problem as the optimal scheduling of a set of surface-to-air missiles of a warship to a set of attacking air threats. The optimal scheduling of the weapon results in an in...
متن کامل